﻿using CLM.Gestao.Protheus.DAL;
using System.Collections.Generic;
using System.Linq;

namespace CLM.Gestao.Protheus.BLL
{
    public class SpContaContabilGaldermaNacional : SpContaContabilGaldermaNacionalBLO
    {
        #region Propriedades

        public int IdContaContabil { get; set; }
        public string CodigoContaContabil { get; set; }
        public string DescricaoContaContabil { get; set; }
        public string CodigoSubConta { get; set; }
        public string DescricaoSubConta { get; set; }

        #endregion Propriedades

        public List<SpContaContabilGaldermaNacional> ExecutaProcedure()
        {
            List<SpContaContabilGaldermaNacional> proc = (from p in GetAll()
                                                          select new SpContaContabilGaldermaNacional
                                                          {
                                                              CodigoContaContabil = p.CODIGO.Trim(),
                                                              DescricaoContaContabil = p.DESCRICAO.Trim(),
                                                              CodigoSubConta = p.SUBCONTA.Trim(),
                                                              DescricaoSubConta = p.DESCSCONTA.Trim()
                                                          }).ToList();

            return proc;
        }
    }

    public class SpContaContabilGaldermaNacionalBLO
    {
        /// <summary>
        /// SPContaContabilGaldermaNacionalDAO
        /// </summary>
        private SpContasContabeisGaldermaNacionalDAO _base = new SpContasContabeisGaldermaNacionalDAO();

        /// <summary>
        /// Recupera uma entidade do sistema
        /// </summary>
        /// <returns>Lista</returns>
        public List<SP_GALD_BIRDS_CONTAS_CONTABEIS_Result> GetAll()
        {
            return _base.GetAll();
        }
    }
}